<?php
namespace Zxf5115\Laravel\Kernel\Traits;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use Illuminate\Validation\ValidationException;

/**
 * @author zhangxiaofei [<1326336909@qq.com>]
 * @dateTime 2025-09-24
 *
 * 数据验证特性
 */
trait UserTrait
{
  /**
   * 获取当前用户的用户编号
   *
   * @return 用户编号
   */
  public function getUserId() : int
  {
    return auth(static::AUTH)->user()->id ?? 0;
  }


  /**
   * 获取当前登录用户的角色编号
   *
   * @return int 角色编号
   */
  public function getRoleId() : int
  {
    return auth(static::AUTH)->user()->role_id ?? 0;
  }


  /**
   * 获取当前登录用户的机构编号
   *
   * @return int 机构编号
   */
  public function getOrganizationId() : int
  {
    return auth(static::AUTH)->user()->organization_id ?? 0;
  }


  /**
   * 获取当前登录用户的昵称
   *
   * @return string 用户昵称
   */
  public function getNickName() : string
  {
    return auth(static::AUTH)->user()->nickname ?? '';
  }
}
